/**
 * 使用缓存代理  求乘积函数实现缓存
 * 可用于 ajax异步请求数据   把已经请求到的数据放好  下次
 * 访问同一页时 就可以直接拿缓存好的数据
 * 
 */

// 求乘积函数
var mult = function(){
    var a = 1
    for(var i=0,item;item=arguments[i++];){
        a=a*item
    }
    return a
}
//console.log(mult(1,2,3));


//缓存代理
var proxyMult = (function(){
    var cache = {}
    return function(){
        var args = Array.prototype.join.call(arguments,',')
        if(args in cache){
            return cache[args]
        }
        return cache[args] = mult(...arguments)
    }
})()
console.log(proxyMult(1,2,3));
console.log(proxyMult(2,3,4));
